<?php
class Myblog_Form_Comments extends Zend_Form
{
public $input=array(
array('ViewHelper'),
array('Label'),
array('Errors'),
array('HtmlTag',array('tag'=>'div','class'=>'comments')),
);
	public function init()
	{
	$this->setAction('catalog/item/display')
		->setName('comments')
		->setMethod('post');

	$name=new Zend_Form_Element_Text('name');
	$name->setLabel('Ваше имя:')
		->setOptions(array('maxlength'=>'20'))
		->addValidator('Regex',false,array('/^[a-zа-я]+[a-zа-я0-9_-]+$/iu','messages'=>'Имя содержит недопустимые символы'))
		->addValidator('StringLength',false,array(4,20))
		->addFilter('HtmlEntities')
		->setRequired(true)
		->addFilter('StripTags')
		->addDecorators($this->input);
	
	$email=new Zend_Form_Element_Text('email');
	$email->setLabel('Ваш Email:')
		->setRequired(true)
		->setOptions(array('maxlength'=>'20'))
        ->addValidator('EmailAddress')
		//->addValidator('Regex',false,array('/^[a-z]{3,3}[\w]@[a-z]{2,6}.[a-z]{2,4}$/iu','messages'=>"'%value%' неправильный адрес электронной почты. Введите его в формате имя@домен"))
		//->addFilter('HtmlEntities')
		//->addFilter('StripTags')
		->addDecorators($this->input);

	$comment=new Zend_Form_Element_Textarea('blog_comment');
	$comment->setLabel('Комментарий:')
		->setRequired(true)
		->setOptions(array('rows'=>'10','cols'=>'50','maxlength'=>'2000'))
		->addValidator('StringLength',true,array(10,2000,'messages'=>array('stringLengthTooShort'=>'Минимальная длина комментария 10 символов',
		'stringLengthTooLong'=>'Максимальная длина комментария в 2000 символов')))
		//->addFilter('HtmlEntities')
		->addFilter('StripTags')
		->addDecorators($this->input);
		
	$hidden = new Zend_Form_Element_Hidden('article_id');
	$hidden->setOptions(array('size'=>5))
			->addFilters(array('StripTags','Digits'));

    $captcha= new  Zend_Form_Element_Captcha('captcha',array(
                   'label'=>'Введите капчу:',
                   'size'=>5,
                   'autocomplete'=>'off',
                   'required'=>true,
                   'validators'=>array(array('NotEmpty')),
                   'captcha'=>array(
                                    'captcha'=>'Image',
                                    'GcFreq'=>3,
                                    'wordLen'=>5,
                                    'timeout'=>300,
                                    'width'=>120,
                                    'height'=>60,
                                    'imgUrl'=>'images/captcha',
                                    'fontsize'=>22,
                                    'DotNoiseLevel'=>'5',
                                    'LineNoiseLevel'=>'5',
                                    'imgDir'=>APPLICATION_PATH . '/../public/images/captcha',
                                    'font'=>APPLICATION_PATH . '/../public/fonts/AA_typewriter.ttf'
                                    )
    ));
	$element=new Myblog_Form_Element_Link('link',array('attribs'=>array('text'=>'Обновить капчу','title'=>'Обновить капчу','href'=>'javascript:void(0)')));
	$element->removeDecorator('Label');	
		
	$hidden->removeDecorator('label');	
	
	//$captcha->removeDecorator('Errors');
	$submit=new Zend_Form_Element_Submit('submit');
	$submit->setLabel('Добавить')
			->setOptions(array('class'=>'btn btn-primary','id'=>'comSubmit','title'=>'Добавить комментарий'));

	$submit ->removeDecorator('submit-label');
	$this->addElements(array($name,$email,$comment,$captcha,$element,$submit,$hidden));
	}
}
